function Matrix4x4()
{
    this.data=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]; 
    this.prop=null;
}


function mat4x4_mult(a,b)
{
    var re=new Matrix4x4();

    for(var i=0;i<4;i++)
    {
        for(var j=0;j<4;j++)
        {
            var temp_s=0;
            for(var k=0;k<4;k++)
            {
                temp_s+=a.data[4*i+k]*b.data[4*k+j];
            }
            re.data[i*4+j]=temp_s;

        }

    }  
    return re;  
}

function mat4x4_transpose(a)
{
    var re=new Matrix4x4();
    for(var i=0;i<4;i++)
    {
        for(var j=0;j<4;j++)
        {
            re.data[i*4+j]=a.data[j*4+i];
        }

    }
    return re;
}
// function mat4x4_inverse(a)
// {
    
// }

